Personal computer systems in general and IBM personal computers in particular have attained widespread use for providing computer power to many segments of today's modern society. Personal computer systems can usually be defined as a desktop, floor standing, or portable microcomputer that consists of a system unit having a single system processor, a display monitor, a keyboard, one or more diskette drives, a fixed disk storage, and an optional printer. One of the distinguishing characteristics of these systems is the use of a motherboard or system planar to electrically connect these components together. These systems are designed primarily to give independent computing power to a single user and are inexpensively priced for purchase by individuals or small businesses.
Examples of such personal computer systems are IBM's PERSONAL COMPUTER AT, IBM's PERSONAL SYSTEM/2 Models 25, 30, 35, 40 SX, 55 SX, 57 SX, 70, 80, 90 and 95, and IBM PERSONAL SYSTEM/1 computers. These systems can be classified into two general families. The first family, usually referred to as Family I Models, use a bus architecture exemplified by the IBM PERSONAL COMPUTER AT and other "IBM compatible" machines. The second family, referred to as Family II Models, use IBM's MICRO CHANNEL bus architecture exemplified by IBM's PERSONAL SYSTEM/2 Models 55 SX through 95. Beginning with the earliest personal computer system of the Family I models, such as the IBM Personal Computer, it was recognized that the operating system would be of utmost importance. Realizing that market acceptance was a primary goal, IBM chose a rather simple text oriented operating system which was suited for the level of hardware technology of the time. The operating system chosen was named DOS which is the acronym for disk operating system. The limited objectives for DOS at the time were non-cryptic commands, English language error messages (instead of error codes, small memory size (12 Kbyte) and reasonable performance. DOS served well for the Family I machines and even into the basic Family II models, but as memory and hardware prices declined and performance increased a more user friendly intuitive operating system was needed. Beginning in 1986, IBM started development of a graphical user interface (GUI) designed to mask the complexity of the hardware technology advances and present to the user an intuitive, flexible, and easy-to-use system. This operating system was named OS/2 and was developed for the more advanced technology of the Family II models.
Additionally, other manufactures have investigated and used other types of GUI systems. One of the earliest in the personal computing area was Xerox's STAR system that presented the user with icons representing a particular operation or software application. Later, APPLE's Macintosh system added features such as windows and drag and drop to further the intuitive nature of the graphical user interface for APPLE's line of computers. Presently, MICROSOFT's WINDOWS provides a graphical user interface on IBM compatible machines.
With GUI systems, the computer system is controlled using a pointing device such as a mouse. The pointing device controls the location of a pointer that appears on the screen of the computer's display device. Elements on the screen such as icons, which are graphical representations of various modules such as disk drives, applications and documents, or windows, which are rectangular areas on the screen in which applications or documents can be viewed, may be manipulated using the mouse. In this way, the underlying devices which the elements represent may be controlled.
As GUI systems developed, producing the underlying elements such as windows and icons has become well known. In fact, publicly available tools such as icon and window editors are now available to actually create the visual display. For example, Conklin, OS/2 Notebook, (Microsoft Press, 1990) pp. 159-255 discusses OS/2 software tools.
As new models of the personal computer family were introduced, OS/2 had to be updated and enhanced. One of the major features of the OS/2 Version 2.0 operating system in which the present invention is incorporated is a workplace shell featuring a desktop metaphor. Briefly, the desktop metaphor presents the user with the look of a desktop. For example, files can appear as icons grouped together into folders. Folders can be placed into a predefined space such as a window. Application programs appear as unique icons that can be activated when a pointer, positioned by the movement of a mouse over the icon, is energized usually by double clicking one of the mouse buttons.
Prior GUI systems such as IBM OS/2 Version 1.3 have employed cascade menus. When a cascade menu appears in the user's desktop on the screen, the user is presented with a main menu including a plurality of choices, each of the choices representing a basic function. For example, as seen in the screen representation depicted in FIG. 1, after double clicking on an icon such as folder icon 2, a main menu 4 appears within the window 6 on the computer screen. In this particular example, menu 4 includes such choices as the following basic functions "Open", "Help", "Create another" (folder) , "Copy, Move", "Create shadow", "Delete" and "Find".
When the user selects the basic function Help from main menu 4, the Help function becomes highlighted and a cascaded submenu 8 automatically and unconditionally appears on the screen adjacent menu 4 as seen in FIG. 2. Submenu 8 is said to be cascaded with respect to main menu 4 in that it appears adjacent main menu 4 and depends logically therefrom. Submenu 8 includes a plurality of more advanced functions as compared with the basic functions of menu 4. The advanced functions of menu 8 are related to the particular basic function selected from menu 4 but provide the capability of selecting a particular type, variety, aspect or portion of the selected basic function. In this respect the functions of submenu 8 are subfunctions of the particular item of menu 4 which was selected by the user. For example, in the present example wherein the basic function Help was selected from menu 4, the submenu 8 may include the following more advanced subfunctions "Help index", "General help", "Using help" and "Keys help" as seen in FIG. 2.
The ready availability of such advanced functions is very desirable for more experienced GUI users. However, always exposing novice users to such advanced functions presents the novice user with unnecessary hurdles to overcome while learning and becoming productive with a particular GUI.